﻿#define _CRT_SECURE_NO_WARNINGS 1
//解析加减法运算
//如：
//输入字符串："1+2+3" 输出："6"
//输入字符串："1+2-3" 输出："0"
//输入字符串："-1+2+3" 输出："4"
//输入字符串："1" 输出："1"
//输入字符串："-1" 输出："-1"
//已知条件：输入的运算都是整数运算，且只有加减运算
//要求：输出为String类型，不能使用内建的eval()函数
//#include<stdio.h>
//int main(void)
//{
//	int num[1000], sign[1000], n = 0, n1 = 0, ans = 0;
//	char str[3000];
//	do{
//		str[n] = getchar();
//		n++;
//	} while (str[n - 1] != '\n');
//	n--;
//	str[n] = '\0';
//	num[0] = 0;
//	if (str[0] == '-') sign[0] = -1;
//	else sign[0] = 1;
//	for (int i = 0; i<n; i++){
//		if (str[i] == '+'){
//			sign[n1 + 1] = 1;
//			n1++;
//		}
//		else if (str[i] == '-'){
//			sign[n1 + 1] = -1;
//			n1++;
//		}
//		else num[n1] = num[n1] * 10 + (int)(str[i] - '0');
//	}
//	for (int i = 0; i <= n1; i++){
//		ans = ans + num[i] * sign[i];
//	}
//	printf("%d", ans);
//	return 0;
//}




//在日常书面表达中，我们经常会碰到很长的单词，比如"localization"、"internationalization"等。
//为了书写方便，我们会将太长的单词进行缩写。这里进行如下定义：
//如果一个单词包含的字符个数超过10则我们认为它是一个长单词。所有的长单词都需要进行缩写，
//缩写的方法是先写下这个单词的首尾字符，
//然后再在首尾字符中间写上这个单词去掉首尾字符后所包含的字符个数。
//比如"localization"缩写后得到的是"l10n"，
//"internationalization"缩写后得到的是"i18n"。现给出n个单词，
//将其中的长单词进行缩写，其余的按原样输出
//#include <stdio.h>
//int main()
//{
//	char a[100];
//	int n = 0;
//	int i = 0;
//	scanf("%d", &n);
//	int len = 0;
//	for (i = 0; i<n; i++)
//	{
//		scanf("%s", &a);
//		len = strlen(a);
//		if (len<10)
//		{
//			printf("%s\n", a);
//		}
//		else
//		{
//			printf("%c%d%c\n", a[0], strlen(a) - 2, a[strlen(a) - 1]);
//		}
//	}
//	return 0;
//}




//时辰送给了她的女儿凛一块魔法表，但是魔法表的表针总是指向奇怪的地方，
//所以凛决定修 理一下这块表。
//当前表的指针指向了一个方向𝑛1(在 0 度到 359 度之间，
//正北方向是 0 度， 正东方向是 90 度)，她需要将表针调节到方向𝑛2。
//她可以选择顺时针旋转表针，也可以逆 时针旋转表针，若顺时针旋转的话，角度会增大，
//逆时针旋转则角度会减小。当顺时针旋转 到 359 度后，若再旋转一度，则会回到 0 度。
//凛想要让表针旋转的角度尽量小，也就是以 最短路径旋转到正确的方向，
//请你告诉她应该如何旋转。
//当有多种旋转方式能够旋到正确的方向，且旋转过的角度相同时，凛会选择顺时针旋转。
//#include <stdio.h>
//int main()
//{
//	int n1 = 0;
//	int n2 = 0;
//	scanf("%d\n", &n1);
//	scanf("%d", &n2);
//	if (n1>n2)
//	{
//		if (n1<(180 + n2))
//		{
//			printf("%d\n", -(n1 - n2));
//		}
//		else
//		{
//			printf("%d", 360 - n1 + n2);
//		}
//	}
//	else if (n1<n2)
//	{
//		if (n2 <= (180 + n1))
//		{
//			printf("%d\n", n2 - n1);
//		}
//		else
//		{
//			printf("%d\n", -(360 - n2 + n1));
//		}
//	}
//	else
//	{
//		printf("0");
//	}
//	return 0;
//}




//输入n个整数，输出出现次数大于等于数组长度一半的数。
//#include <stdio.h>
//int main()
//{
//	int n[101] = { 0 };
//	int i = 0;
//	int a = 0;
//	int len = 0;
//	do{
//		scanf("%d", &a);
//		n[a]++;
//		len++;
//	} while (getchar() != '\n');
//	for (i = 0; i<len; i++)
//	{
//		if (n[i] >= len / 2)
//		{
//			printf("%d", i);
//		}
//	}
//	return 0;
//}